/*
*
* SPDX-License-Identifier: GPL-2.0
*
* Copyright (C) 2011-2018 ARM or its affiliates
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2.
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/

#if !defined(__IMX481_SEQ_H__)
#define __IMX481_SEQ_H__

static acam_reg_t init[] = {
    //wait command - address is 0xFFFF
    { 0xFFFF, 20 },
    //stop sequence - address is 0x0000
    { 0x0000, 0x0000, 0x0000, 0x0000 }
};

static acam_reg_t linear_2328_1748_30fps_446Mbps_4lane_10bits[] = {
    //init
    {0x0136, 0x18, 0xFF, 1},
    {0x0137, 0x00, 0xFF, 1},
    {0x3C7E, 0x01, 0xFF, 1},
    {0x3C7F, 0x06, 0xFF, 1},
    {0x3F7F, 0x01, 0xFF, 1},
    {0x531C, 0x01, 0xFF, 1},
    {0x531D, 0x02, 0xFF, 1},
    {0x531E, 0x04, 0xFF, 1},
    {0x5928, 0x00, 0xFF, 1},
    {0x5929, 0x2F, 0xFF, 1},
    {0x592A, 0x00, 0xFF, 1},
    {0x592B, 0x85, 0xFF, 1},
    {0x592C, 0x00, 0xFF, 1},
    {0x592D, 0x32, 0xFF, 1},
    {0x592E, 0x00, 0xFF, 1},
    {0x592F, 0x88, 0xFF, 1},
    {0x5930, 0x00, 0xFF, 1},
    {0x5931, 0x3D, 0xFF, 1},
    {0x5932, 0x00, 0xFF, 1},
    {0x5933, 0x93, 0xFF, 1},
    {0x5938, 0x00, 0xFF, 1},
    {0x5939, 0x24, 0xFF, 1},
    {0x593A, 0x00, 0xFF, 1},
    {0x593B, 0x7A, 0xFF, 1},
    {0x593C, 0x00, 0xFF, 1},
    {0x593D, 0x24, 0xFF, 1},
    {0x593E, 0x00, 0xFF, 1},
    {0x593F, 0x7A, 0xFF, 1},
    {0x5940, 0x00, 0xFF, 1},
    {0x5941, 0x2F, 0xFF, 1},
    {0x5942, 0x00, 0xFF, 1},
    {0x5943, 0x85, 0xFF, 1},
    {0x5E12, 0x00, 0xFF, 1},
    {0x5E13, 0x23, 0xFF, 1},
    {0x5F06, 0x08, 0xFF, 1},
    {0x5F07, 0x81, 0xFF, 1},
    {0x5F0B, 0xEB, 0xFF, 1},
    {0x5F0C, 0xAE, 0xFF, 1},
    {0x5F0D, 0x15, 0xFF, 1},
    {0x5F0E, 0x6E, 0xFF, 1},
    {0x5F0F, 0x03, 0xFF, 1},
    {0x5F10, 0xA5, 0xFF, 1},
    {0x5F11, 0xC6, 0xFF, 1},
    {0x5F12, 0x92, 0xFF, 1},
    {0x5F13, 0xB9, 0xFF, 1},
    {0x5F14, 0x5E, 0xFF, 1},
    {0x5F17, 0x5E, 0xFF, 1},
    {0x5F18, 0xDC, 0xFF, 1},
    {0x5F19, 0x23, 0xFF, 1},
    {0x5F1A, 0xDB, 0xFF, 1},
    {0x5F1B, 0xC7, 0xFF, 1},
    {0x5F1C, 0x5B, 0xFF, 1},
    {0x5F1D, 0x7E, 0xFF, 1},
    {0x5F1E, 0x20, 0xFF, 1},
    {0x5F1F, 0x51, 0xFF, 1},
    {0x5F20, 0xA2, 0xFF, 1},
    {0x5F21, 0x46, 0xFF, 1},
    {0x5F22, 0x87, 0xFF, 1},
    {0x5F23, 0x2C, 0xFF, 1},
    {0x5F24, 0x1D, 0xFF, 1},
    {0x5F25, 0x10, 0xFF, 1},
    {0x5F26, 0x76, 0xFF, 1},
    {0x5F27, 0xA1, 0xFF, 1},
    {0x5F28, 0xC6, 0xFF, 1},
    {0x5F29, 0x07, 0xFF, 1},
    {0x5F2A, 0x1A, 0xFF, 1},
    {0x5F2B, 0x1C, 0xFF, 1},
    {0x5F2C, 0xA8, 0xFF, 1},
    {0x5F2D, 0x76, 0xFF, 1},
    {0x5F2E, 0x61, 0xFF, 1},
    {0x5F2F, 0xC6, 0xFF, 1},
    {0x5F30, 0x87, 0xFF, 1},
    {0x5F31, 0x2C, 0xFF, 1},
    {0x5F32, 0x1D, 0xFF, 1},
    {0x5F33, 0x10, 0xFF, 1},
    {0x5F34, 0x76, 0xFF, 1},
    {0x5F35, 0xA1, 0xFF, 1},
    {0x5F36, 0xC6, 0xFF, 1},
    {0x5F37, 0x07, 0xFF, 1},
    {0x5F38, 0x1A, 0xFF, 1},
    {0x5F39, 0x1C, 0xFF, 1},
    {0x5F3A, 0xA8, 0xFF, 1},
    {0x5F3B, 0x76, 0xFF, 1},
    {0x5F3C, 0xA1, 0xFF, 1},
    {0x5F3D, 0xC6, 0xFF, 1},
    {0x5F3E, 0x87, 0xFF, 1},
    {0x5F3F, 0x2C, 0xFF, 1},
    {0x5F40, 0x1D, 0xFF, 1},
    {0x5F41, 0x10, 0xFF, 1},
    {0x5F42, 0x76, 0xFF, 1},
    {0x5F43, 0xA1, 0xFF, 1},
    {0x5F44, 0xC6, 0xFF, 1},
    {0x5F45, 0x07, 0xFF, 1},
    {0x5F46, 0x2A, 0xFF, 1},
    {0x5F47, 0x1D, 0xFF, 1},
    {0x5F48, 0x08, 0xFF, 1},
    {0x5F49, 0x76, 0xFF, 1},
    {0x5F4A, 0x81, 0xFF, 1},
    {0x5F4B, 0xC0, 0xFF, 1},
    {0x5F75, 0x27, 0xFF, 1},
    {0x5F76, 0xEE, 0xFF, 1},
    {0x5F77, 0xEE, 0xFF, 1},
    {0x5F78, 0xEE, 0xFF, 1},
    {0x5F79, 0xE5, 0xFF, 1},
    {0x7990, 0x01, 0xFF, 1},
    {0x7993, 0x5D, 0xFF, 1},
    {0x7994, 0x5D, 0xFF, 1},
    {0x7995, 0xA1, 0xFF, 1},
    {0x799A, 0x01, 0xFF, 1},
    {0x799D, 0x00, 0xFF, 1},
    {0x8169, 0x01, 0xFF, 1},
    {0x8359, 0x01, 0xFF, 1},
    {0x88C7, 0x00, 0xFF, 1},
    {0x88D4, 0x03, 0xFF, 1},
    {0x9300, 0x2A, 0xFF, 1},
    {0x9301, 0x24, 0xFF, 1},
    {0x9302, 0x1E, 0xFF, 1},
    {0x9304, 0x2C, 0xFF, 1},
    {0x9305, 0x23, 0xFF, 1},
    {0x9306, 0x1F, 0xFF, 1},
    {0x9308, 0x2D, 0xFF, 1},
    {0x9309, 0x28, 0xFF, 1},
    {0x930A, 0x26, 0xFF, 1},
    {0x930C, 0x2E, 0xFF, 1},
    {0x930D, 0x2C, 0xFF, 1},
    {0x930E, 0x23, 0xFF, 1},
    {0x9310, 0x2E, 0xFF, 1},
    {0x9311, 0x28, 0xFF, 1},
    {0x9312, 0x23, 0xFF, 1},
    {0x9314, 0x31, 0xFF, 1},
    {0x9315, 0x31, 0xFF, 1},
    {0x9316, 0x2C, 0xFF, 1},
    {0x9317, 0x19, 0xFF, 1},
    {0x9960, 0x00, 0xFF, 1},
    {0x9963, 0x64, 0xFF, 1},
    {0x9964, 0x50, 0xFF, 1},
    {0xA391, 0x04, 0xFF, 1},
    {0xB046, 0x01, 0xFF, 1},
    {0xB048, 0x01, 0xFF, 1},
    {0x8145, 0x00, 0xFF, 1},
    {0x8146, 0x04, 0xFF, 1},
    {0x8341, 0x00, 0xFF, 1},
    {0x8343, 0x08, 0xFF, 1},
    {0xA801, 0x00, 0xFF, 1},
    {0xA802, 0x00, 0xFF, 1},
    {0xA903, 0x00, 0xFF, 1},
    {0xA905, 0x00, 0xFF, 1},
    {0xA909, 0x00, 0xFF, 1},
    {0xA90B, 0x00, 0xFF, 1},
    {0xA925, 0x02, 0xFF, 1},
    {0xA927, 0x02, 0xFF, 1},
    {0xA929, 0x02, 0xFF, 1},
    {0xA92B, 0x00, 0xFF, 1},
    {0xA92D, 0x00, 0xFF, 1},
    {0xA92F, 0x00, 0xFF, 1},
    {0xA933, 0x00, 0xFF, 1},
    {0xA935, 0x00, 0xFF, 1},
    {0xA939, 0x00, 0xFF, 1},
    {0xA93B, 0x00, 0xFF, 1},
    {0xA955, 0x02, 0xFF, 1},
    {0xA957, 0x02, 0xFF, 1},
    {0xA959, 0x02, 0xFF, 1},
    {0xA95B, 0x00, 0xFF, 1},
    {0xA95D, 0x00, 0xFF, 1},
    {0xA95F, 0x00, 0xFF, 1},
    {0xA963, 0x00, 0xFF, 1},
    {0xA965, 0x00, 0xFF, 1},
    {0xA969, 0x00, 0xFF, 1},
    {0xA96B, 0x00, 0xFF, 1},
    {0xA985, 0x02, 0xFF, 1},
    {0xA987, 0x02, 0xFF, 1},
    {0xA989, 0x02, 0xFF, 1},
    {0xA98B, 0x00, 0xFF, 1},
    {0xA98D, 0x00, 0xFF, 1},
    {0xA98F, 0x00, 0xFF, 1},
    {0xAA06, 0x3F, 0xFF, 1},
    {0xAA07, 0x05, 0xFF, 1},
    {0xAA08, 0x04, 0xFF, 1},
    {0xAA12, 0x3F, 0xFF, 1},
    {0xAA13, 0x04, 0xFF, 1},
    {0xAA14, 0x03, 0xFF, 1},
    {0xAB55, 0x02, 0xFF, 1},
    {0xAB57, 0x01, 0xFF, 1},
    {0xAB59, 0x01, 0xFF, 1},
    {0xABB4, 0x00, 0xFF, 1},
    {0xABB5, 0x01, 0xFF, 1},
    {0xABB6, 0x00, 0xFF, 1},
    {0xABB7, 0x01, 0xFF, 1},
    {0xABB8, 0x00, 0xFF, 1},
    {0xABB9, 0x01, 0xFF, 1},
    {0xAE08, 0x00, 0xFF, 1},
    {0xAE0B, 0x00, 0xFF, 1},
    {0xAE0E, 0x00, 0xFF, 1},
    {0xAE11, 0x00, 0xFF, 1},
    {0xAE14, 0x00, 0xFF, 1},
    {0xAE1A, 0x00, 0xFF, 1},
    {0xAE2E, 0x00, 0xFF, 1},
    {0xAE31, 0x00, 0xFF, 1},
    {0xAE37, 0x00, 0xFF, 1},
    {0xAE40, 0x00, 0xFF, 1},
    {0xAE54, 0x00, 0xFF, 1},
    {0xAE57, 0x00, 0xFF, 1},
    {0xAE5D, 0x00, 0xFF, 1},
    {0xAE66, 0x00, 0xFF, 1},
    //2328 1748 ,_30fps
    {0x0112, 0x0A, 0xFF, 1},
    {0x0113, 0x0A, 0xFF, 1},
    {0x0114, 0x03, 0xFF, 1},
    {0x0342, 0x0A, 0xFF, 1},   //hmax  0x0A00 = 2560
    {0x0343, 0x00, 0xFF, 1},  //hamx
    {0x0340, 0x0A, 0xFF, 1}, //vmax  0x0A94 = 2708
    {0x0341, 0x94, 0xFF, 1}, //vmax
    {0x0344, 0x00, 0xFF, 1},
    {0x0345, 0x00, 0xFF, 1},
    {0x0346, 0x00, 0xFF, 1},
    {0x0347, 0x00, 0xFF, 1},
    {0x0348, 0x12, 0xFF, 1},
    {0x0349, 0x2F, 0xFF, 1},
    {0x034A, 0x0D, 0xFF, 1},
    {0x034B, 0xA7, 0xFF, 1},
    {0x0381, 0x01, 0xFF, 1},
    {0x0383, 0x01, 0xFF, 1},
    {0x0385, 0x01, 0xFF, 1},
    {0x0387, 0x01, 0xFF, 1},
    {0x0900, 0x01, 0xFF, 1},
    {0x0901, 0x22, 0xFF, 1},
    {0x0902, 0x08, 0xFF, 1},
    {0x3F4C, 0x01, 0xFF, 1},
    {0x3F4D, 0x01, 0xFF, 1},
    {0x0408, 0x00, 0xFF, 1},
    {0x0409, 0x00, 0xFF, 1},
    {0x040A, 0x00, 0xFF, 1},
    {0x040B, 0x00, 0xFF, 1},
    {0x040C, 0x09, 0xFF, 1},
    {0x040D, 0x18, 0xFF, 1},
    {0x040E, 0x06, 0xFF, 1},
    {0x040F, 0xD4, 0xFF, 1},
    {0x034C, 0x09, 0xFF, 1},
    {0x034D, 0x18, 0xFF, 1},
    {0x034E, 0x06, 0xFF, 1},
    {0x034F, 0xD4, 0xFF, 1},
    {0x0301, 0x06, 0xFF, 1},
    {0x0303, 0x04, 0xFF, 1},
    {0x0305, 0x04, 0xFF, 1},
    {0x0306, 0x00, 0xFF, 1},
    {0x0307, 0xD0, 0xFF, 1},
    {0x030B, 0x01, 0xFF, 1},
    {0x030D, 0x06, 0xFF, 1},
    {0x030E, 0x00, 0xFF, 1},
    {0x030F, 0x7D, 0xFF, 1},
    {0x0310, 0x01, 0xFF, 1},
    {0x3E20, 0x01, 0xFF, 1},
    {0x3E37, 0x00, 0xFF, 1},
    {0x3E3B, 0x00, 0xFF, 1},
    {0x3F78, 0x02, 0xFF, 1},
    {0x3F79, 0xA8, 0xFF, 1},
    {0x3FFE, 0x00, 0xFF, 1},
    {0x3FFF, 0x88, 0xFF, 1},
    {0x5F0A, 0xB2, 0xFF, 1},
    {0xA828, 0x02, 0xFF, 1},
    {0xA829, 0x02, 0xFF, 1},
    {0xA84F, 0x01, 0xFF, 1},
    {0xA850, 0x01, 0xFF, 1},
    {0xB2DF, 0x12, 0xFF, 1},
    {0xB2E5, 0x06, 0xFF, 1},
    {0x0202, 0x0A, 0xFF, 1},
    {0x0203, 0x82, 0xFF, 1},
    {0x0204, 0x00, 0xFF, 1},
    {0x0205, 0x00, 0xFF, 1},
    {0x020E, 0x01, 0xFF, 1},
    {0x020F, 0x00, 0xFF, 1},

    { 0x0000, 0x0000, 0x0000, 0x0000 },
};

static acam_reg_t linear_1920_1080_30fps_446Mbps_4lane_10bits[] = {
    //init
    {0x0136, 0x18, 0xFF, 1},
    {0x0137, 0x00, 0xFF, 1},
    {0x3C7E, 0x02, 0xFF, 1},
    {0x3C7F, 0x06, 0xFF, 1},
    {0x3F7F, 0x01, 0xFF, 1},
    {0x531C, 0x01, 0xFF, 1},
    {0x531D, 0x02, 0xFF, 1},
    {0x531E, 0x04, 0xFF, 1},
    {0x5928, 0x00, 0xFF, 1},
    {0x5929, 0x2F, 0xFF, 1},
    {0x592A, 0x00, 0xFF, 1},
    {0x592B, 0x85, 0xFF, 1},
    {0x592C, 0x00, 0xFF, 1},
    {0x592D, 0x32, 0xFF, 1},
    {0x592E, 0x00, 0xFF, 1},
    {0x592F, 0x88, 0xFF, 1},
    {0x5930, 0x00, 0xFF, 1},
    {0x5931, 0x3D, 0xFF, 1},
    {0x5932, 0x00, 0xFF, 1},
    {0x5933, 0x93, 0xFF, 1},
    {0x5938, 0x00, 0xFF, 1},
    {0x5939, 0x24, 0xFF, 1},
    {0x593A, 0x00, 0xFF, 1},
    {0x593B, 0x7A, 0xFF, 1},
    {0x593C, 0x00, 0xFF, 1},
    {0x593D, 0x24, 0xFF, 1},
    {0x593E, 0x00, 0xFF, 1},
    {0x593F, 0x7A, 0xFF, 1},
    {0x5940, 0x00, 0xFF, 1},
    {0x5941, 0x2F, 0xFF, 1},
    {0x5942, 0x00, 0xFF, 1},
    {0x5943, 0x85, 0xFF, 1},
    {0x5E12, 0x00, 0xFF, 1},
    {0x5E13, 0x23, 0xFF, 1},
    {0x5F06, 0x08, 0xFF, 1},
    {0x5F07, 0x81, 0xFF, 1},
    {0x5F0B, 0xEB, 0xFF, 1},
    {0x5F0C, 0xAE, 0xFF, 1},
    {0x5F0D, 0x15, 0xFF, 1},
    {0x5F0E, 0x6E, 0xFF, 1},
    {0x5F0F, 0x03, 0xFF, 1},
    {0x5F10, 0xA5, 0xFF, 1},
    {0x5F11, 0xC6, 0xFF, 1},
    {0x5F12, 0x92, 0xFF, 1},
    {0x5F13, 0xB9, 0xFF, 1},
    {0x5F14, 0x5E, 0xFF, 1},
    {0x5F17, 0x5E, 0xFF, 1},
    {0x5F18, 0xDC, 0xFF, 1},
    {0x5F19, 0x23, 0xFF, 1},
    {0x5F1A, 0xDB, 0xFF, 1},
    {0x5F1B, 0xC7, 0xFF, 1},
    {0x5F1C, 0x5B, 0xFF, 1},
    {0x5F1D, 0x7E, 0xFF, 1},
    {0x5F1E, 0x20, 0xFF, 1},
    {0x5F1F, 0x51, 0xFF, 1},
    {0x5F20, 0xA2, 0xFF, 1},
    {0x5F21, 0x46, 0xFF, 1},
    {0x5F22, 0x87, 0xFF, 1},
    {0x5F23, 0x2C, 0xFF, 1},
    {0x5F24, 0x1D, 0xFF, 1},
    {0x5F25, 0x10, 0xFF, 1},
    {0x5F26, 0x76, 0xFF, 1},
    {0x5F27, 0xA1, 0xFF, 1},
    {0x5F28, 0xC6, 0xFF, 1},
    {0x5F29, 0x07, 0xFF, 1},
    {0x5F2A, 0x1A, 0xFF, 1},
    {0x5F2B, 0x1C, 0xFF, 1},
    {0x5F2C, 0xA8, 0xFF, 1},
    {0x5F2D, 0x76, 0xFF, 1},
    {0x5F2E, 0x61, 0xFF, 1},
    {0x5F2F, 0xC6, 0xFF, 1},
    {0x5F30, 0x87, 0xFF, 1},
    {0x5F31, 0x2C, 0xFF, 1},
    {0x5F32, 0x1D, 0xFF, 1},
    {0x5F33, 0x10, 0xFF, 1},
    {0x5F34, 0x76, 0xFF, 1},
    {0x5F35, 0xA1, 0xFF, 1},
    {0x5F36, 0xC6, 0xFF, 1},
    {0x5F37, 0x07, 0xFF, 1},
    {0x5F38, 0x1A, 0xFF, 1},
    {0x5F39, 0x1C, 0xFF, 1},
    {0x5F3A, 0xA8, 0xFF, 1},
    {0x5F3B, 0x76, 0xFF, 1},
    {0x5F3C, 0xA1, 0xFF, 1},
    {0x5F3D, 0xC6, 0xFF, 1},
    {0x5F3E, 0x87, 0xFF, 1},
    {0x5F3F, 0x2C, 0xFF, 1},
    {0x5F40, 0x1D, 0xFF, 1},
    {0x5F41, 0x10, 0xFF, 1},
    {0x5F42, 0x76, 0xFF, 1},
    {0x5F43, 0xA1, 0xFF, 1},
    {0x5F44, 0xC6, 0xFF, 1},
    {0x5F45, 0x07, 0xFF, 1},
    {0x5F46, 0x2A, 0xFF, 1},
    {0x5F47, 0x1D, 0xFF, 1},
    {0x5F48, 0x08, 0xFF, 1},
    {0x5F49, 0x76, 0xFF, 1},
    {0x5F4A, 0x81, 0xFF, 1},
    {0x5F4B, 0xC0, 0xFF, 1},
    {0x5F75, 0x27, 0xFF, 1},
    {0x5F76, 0xEE, 0xFF, 1},
    {0x5F77, 0xEE, 0xFF, 1},
    {0x5F78, 0xEE, 0xFF, 1},
    {0x5F79, 0xE5, 0xFF, 1},
    {0x7990, 0x01, 0xFF, 1},
    {0x7993, 0x5D, 0xFF, 1},
    {0x7994, 0x5D, 0xFF, 1},
    {0x7995, 0xA1, 0xFF, 1},
    {0x799A, 0x01, 0xFF, 1},
    {0x799D, 0x00, 0xFF, 1},
    {0x8169, 0x01, 0xFF, 1},
    {0x8359, 0x01, 0xFF, 1},
    {0x88C7, 0x00, 0xFF, 1},
    {0x88D4, 0x03, 0xFF, 1},
    {0x9300, 0x2A, 0xFF, 1},
    {0x9301, 0x24, 0xFF, 1},
    {0x9302, 0x1E, 0xFF, 1},
    {0x9304, 0x2C, 0xFF, 1},
    {0x9305, 0x23, 0xFF, 1},
    {0x9306, 0x1F, 0xFF, 1},
    {0x9308, 0x2D, 0xFF, 1},
    {0x9309, 0x28, 0xFF, 1},
    {0x930A, 0x26, 0xFF, 1},
    {0x930C, 0x2E, 0xFF, 1},
    {0x930D, 0x2C, 0xFF, 1},
    {0x930E, 0x23, 0xFF, 1},
    {0x9310, 0x2E, 0xFF, 1},
    {0x9311, 0x28, 0xFF, 1},
    {0x9312, 0x23, 0xFF, 1},
    {0x9314, 0x31, 0xFF, 1},
    {0x9315, 0x31, 0xFF, 1},
    {0x9316, 0x2C, 0xFF, 1},
    {0x9317, 0x19, 0xFF, 1},
    {0x9960, 0x00, 0xFF, 1},
    {0x9963, 0x64, 0xFF, 1},
    {0x9964, 0x50, 0xFF, 1},
    {0xA391, 0x04, 0xFF, 1},
    {0xB046, 0x01, 0xFF, 1},
    {0xB048, 0x01, 0xFF, 1},
    {0x8145, 0x00, 0xFF, 1},
    {0x8146, 0x04, 0xFF, 1},
    {0x8341, 0x00, 0xFF, 1},
    {0x8343, 0x08, 0xFF, 1},
    {0xA801, 0x00, 0xFF, 1},
    {0xA802, 0x00, 0xFF, 1},
    {0xA903, 0x00, 0xFF, 1},
    {0xA905, 0x00, 0xFF, 1},
    {0xA909, 0x00, 0xFF, 1},
    {0xA90B, 0x00, 0xFF, 1},
    {0xA925, 0x02, 0xFF, 1},
    {0xA927, 0x02, 0xFF, 1},
    {0xA929, 0x02, 0xFF, 1},
    {0xA92B, 0x00, 0xFF, 1},
    {0xA92D, 0x00, 0xFF, 1},
    {0xA92F, 0x00, 0xFF, 1},
    {0xA933, 0x00, 0xFF, 1},
    {0xA935, 0x00, 0xFF, 1},
    {0xA939, 0x00, 0xFF, 1},
    {0xA93B, 0x00, 0xFF, 1},
    {0xA955, 0x02, 0xFF, 1},
    {0xA957, 0x02, 0xFF, 1},
    {0xA959, 0x02, 0xFF, 1},
    {0xA95B, 0x00, 0xFF, 1},
    {0xA95D, 0x00, 0xFF, 1},
    {0xA95F, 0x00, 0xFF, 1},
    {0xA963, 0x00, 0xFF, 1},
    {0xA965, 0x00, 0xFF, 1},
    {0xA969, 0x00, 0xFF, 1},
    {0xA96B, 0x00, 0xFF, 1},
    {0xA985, 0x02, 0xFF, 1},
    {0xA987, 0x02, 0xFF, 1},
    {0xA989, 0x02, 0xFF, 1},
    {0xA98B, 0x00, 0xFF, 1},
    {0xA98D, 0x00, 0xFF, 1},
    {0xA98F, 0x00, 0xFF, 1},
    {0xAA06, 0x3F, 0xFF, 1},
    {0xAA07, 0x05, 0xFF, 1},
    {0xAA08, 0x04, 0xFF, 1},
    {0xAA12, 0x3F, 0xFF, 1},
    {0xAA13, 0x04, 0xFF, 1},
    {0xAA14, 0x03, 0xFF, 1},
    {0xAB55, 0x02, 0xFF, 1},
    {0xAB57, 0x01, 0xFF, 1},
    {0xAB59, 0x01, 0xFF, 1},
    {0xABB4, 0x00, 0xFF, 1},
    {0xABB5, 0x01, 0xFF, 1},
    {0xABB6, 0x00, 0xFF, 1},
    {0xABB7, 0x01, 0xFF, 1},
    {0xABB8, 0x00, 0xFF, 1},
    {0xABB9, 0x01, 0xFF, 1},
    {0xAE08, 0x00, 0xFF, 1},
    {0xAE0B, 0x00, 0xFF, 1},
    {0xAE0E, 0x00, 0xFF, 1},
    {0xAE11, 0x00, 0xFF, 1},
    {0xAE14, 0x00, 0xFF, 1},
    {0xAE1A, 0x00, 0xFF, 1},
    {0xAE2E, 0x00, 0xFF, 1},
    {0xAE31, 0x00, 0xFF, 1},
    {0xAE37, 0x00, 0xFF, 1},
    {0xAE40, 0x00, 0xFF, 1},
    {0xAE54, 0x00, 0xFF, 1},
    {0xAE57, 0x00, 0xFF, 1},
    {0xAE5D, 0x00, 0xFF, 1},
    {0xAE66, 0x00, 0xFF, 1},

    //1920*1080
    {0x0112, 0x0A, 0xFF, 1},
    {0x0113, 0x0A, 0xFF, 1},
    {0x0114, 0x03, 0xFF, 1},
    {0x0342, 0x0A, 0xFF, 1}, //hmax 0x0A00 = 2560
    {0x0343, 0x00, 0xFF, 1}, //hmax
    {0x0340, 0x0C, 0xFF, 1}, //vmax 0x0CB6 = 3254
    {0x0341, 0xB6, 0xFF, 1},  //vmax
    {0x0344, 0x00, 0xFF, 1},
    {0x0345, 0x00, 0xFF, 1},
    {0x0346, 0x02, 0xFF, 1},
    {0x0347, 0x98, 0xFF, 1},
    {0x0348, 0x12, 0xFF, 1},
    {0x0349, 0x2F, 0xFF, 1},
    {0x034A, 0x0B, 0xFF, 1},
    {0x034B, 0x07, 0xFF, 1},
    {0x0381, 0x01, 0xFF, 1},
    {0x0383, 0x01, 0xFF, 1},
    {0x0385, 0x01, 0xFF, 1},
    {0x0387, 0x01, 0xFF, 1},
    {0x0900, 0x01, 0xFF, 1},
    {0x0901, 0x22, 0xFF, 1},
    {0x0902, 0x0A, 0xFF, 1},
    {0x3F4C, 0x01, 0xFF, 1},
    {0x3F4D, 0x01, 0xFF, 1},
    {0x0408, 0x00, 0xFF, 1},
    {0x0409, 0xCC, 0xFF, 1},
    {0x040A, 0x00, 0xFF, 1},
    {0x040B, 0x00, 0xFF, 1},
    {0x040C, 0x07, 0xFF, 1},
    {0x040D, 0x80, 0xFF, 1},
    {0x040E, 0x04, 0xFF, 1},
    {0x040F, 0x38, 0xFF, 1},
    {0x034C, 0x07, 0xFF, 1},
    {0x034D, 0x80, 0xFF, 1},
    {0x034E, 0x04, 0xFF, 1},
    {0x034F, 0x38, 0xFF, 1},
    {0x0301, 0x06, 0xFF, 1},
    {0x0303, 0x04, 0xFF, 1},
    {0x0305, 0x04, 0xFF, 1},
    {0x0306, 0x00, 0xFF, 1},
    {0x0307, 0xFA, 0xFF, 1},
    {0x030B, 0x01, 0xFF, 1},
    {0x030D, 0x06, 0xFF, 1},
    {0x030E, 0x00, 0xFF, 1},
    {0x030F, 0x7D, 0xFF, 1},
    {0x0310, 0x01, 0xFF, 1},
    {0x3E20, 0x01, 0xFF, 1},
    {0x3E37, 0x00, 0xFF, 1},
    {0x3E3B, 0x00, 0xFF, 1},
    {0x3F78, 0x02, 0xFF, 1},
    {0x3F79, 0xA8, 0xFF, 1},
    {0x3FFE, 0x00, 0xFF, 1},
    {0x3FFF, 0x88, 0xFF, 1},
    {0x5F0A, 0xB2, 0xFF, 1},
    {0xA828, 0x02, 0xFF, 1},
    {0xA829, 0x02, 0xFF, 1},
    {0xA84F, 0x01, 0xFF, 1},
    {0xA850, 0x01, 0xFF, 1},
    {0xB2DF, 0x12, 0xFF, 1},
    {0xB2E5, 0x06, 0xFF, 1},
    {0x0202, 0x0C, 0xFF, 1},
    {0x0203, 0xA4, 0xFF, 1},
    {0x0204, 0x00, 0xFF, 1},
    {0x0205, 0x00, 0xFF, 1},
    {0x020E, 0x01, 0xFF, 1},
    {0x020F, 0x00, 0xFF, 1},

    //{0x0101,0x03,0xff,1}, //vertical flip and horizontal mirror
    { 0x0000, 0x0000, 0x0000, 0x0000 },
};

static acam_reg_t linear_1920_1080_24fps_446Mbps_4lane_10bits[] = {
    //init
    {0x0136, 0x18, 0xFF, 1},
    {0x0137, 0x00, 0xFF, 1},
    {0x3C7E, 0x02, 0xFF, 1},
    {0x3C7F, 0x06, 0xFF, 1},
    {0x3F7F, 0x01, 0xFF, 1},
    {0x531C, 0x01, 0xFF, 1},
    {0x531D, 0x02, 0xFF, 1},
    {0x531E, 0x04, 0xFF, 1},
    {0x5928, 0x00, 0xFF, 1},
    {0x5929, 0x2F, 0xFF, 1},
    {0x592A, 0x00, 0xFF, 1},
    {0x592B, 0x85, 0xFF, 1},
    {0x592C, 0x00, 0xFF, 1},
    {0x592D, 0x32, 0xFF, 1},
    {0x592E, 0x00, 0xFF, 1},
    {0x592F, 0x88, 0xFF, 1},
    {0x5930, 0x00, 0xFF, 1},
    {0x5931, 0x3D, 0xFF, 1},
    {0x5932, 0x00, 0xFF, 1},
    {0x5933, 0x93, 0xFF, 1},
    {0x5938, 0x00, 0xFF, 1},
    {0x5939, 0x24, 0xFF, 1},
    {0x593A, 0x00, 0xFF, 1},
    {0x593B, 0x7A, 0xFF, 1},
    {0x593C, 0x00, 0xFF, 1},
    {0x593D, 0x24, 0xFF, 1},
    {0x593E, 0x00, 0xFF, 1},
    {0x593F, 0x7A, 0xFF, 1},
    {0x5940, 0x00, 0xFF, 1},
    {0x5941, 0x2F, 0xFF, 1},
    {0x5942, 0x00, 0xFF, 1},
    {0x5943, 0x85, 0xFF, 1},
    {0x5E12, 0x00, 0xFF, 1},
    {0x5E13, 0x23, 0xFF, 1},
    {0x5F06, 0x08, 0xFF, 1},
    {0x5F07, 0x81, 0xFF, 1},
    {0x5F0B, 0xEB, 0xFF, 1},
    {0x5F0C, 0xAE, 0xFF, 1},
    {0x5F0D, 0x15, 0xFF, 1},
    {0x5F0E, 0x6E, 0xFF, 1},
    {0x5F0F, 0x03, 0xFF, 1},
    {0x5F10, 0xA5, 0xFF, 1},
    {0x5F11, 0xC6, 0xFF, 1},
    {0x5F12, 0x92, 0xFF, 1},
    {0x5F13, 0xB9, 0xFF, 1},
    {0x5F14, 0x5E, 0xFF, 1},
    {0x5F17, 0x5E, 0xFF, 1},
    {0x5F18, 0xDC, 0xFF, 1},
    {0x5F19, 0x23, 0xFF, 1},
    {0x5F1A, 0xDB, 0xFF, 1},
    {0x5F1B, 0xC7, 0xFF, 1},
    {0x5F1C, 0x5B, 0xFF, 1},
    {0x5F1D, 0x7E, 0xFF, 1},
    {0x5F1E, 0x20, 0xFF, 1},
    {0x5F1F, 0x51, 0xFF, 1},
    {0x5F20, 0xA2, 0xFF, 1},
    {0x5F21, 0x46, 0xFF, 1},
    {0x5F22, 0x87, 0xFF, 1},
    {0x5F23, 0x2C, 0xFF, 1},
    {0x5F24, 0x1D, 0xFF, 1},
    {0x5F25, 0x10, 0xFF, 1},
    {0x5F26, 0x76, 0xFF, 1},
    {0x5F27, 0xA1, 0xFF, 1},
    {0x5F28, 0xC6, 0xFF, 1},
    {0x5F29, 0x07, 0xFF, 1},
    {0x5F2A, 0x1A, 0xFF, 1},
    {0x5F2B, 0x1C, 0xFF, 1},
    {0x5F2C, 0xA8, 0xFF, 1},
    {0x5F2D, 0x76, 0xFF, 1},
    {0x5F2E, 0x61, 0xFF, 1},
    {0x5F2F, 0xC6, 0xFF, 1},
    {0x5F30, 0x87, 0xFF, 1},
    {0x5F31, 0x2C, 0xFF, 1},
    {0x5F32, 0x1D, 0xFF, 1},
    {0x5F33, 0x10, 0xFF, 1},
    {0x5F34, 0x76, 0xFF, 1},
    {0x5F35, 0xA1, 0xFF, 1},
    {0x5F36, 0xC6, 0xFF, 1},
    {0x5F37, 0x07, 0xFF, 1},
    {0x5F38, 0x1A, 0xFF, 1},
    {0x5F39, 0x1C, 0xFF, 1},
    {0x5F3A, 0xA8, 0xFF, 1},
    {0x5F3B, 0x76, 0xFF, 1},
    {0x5F3C, 0xA1, 0xFF, 1},
    {0x5F3D, 0xC6, 0xFF, 1},
    {0x5F3E, 0x87, 0xFF, 1},
    {0x5F3F, 0x2C, 0xFF, 1},
    {0x5F40, 0x1D, 0xFF, 1},
    {0x5F41, 0x10, 0xFF, 1},
    {0x5F42, 0x76, 0xFF, 1},
    {0x5F43, 0xA1, 0xFF, 1},
    {0x5F44, 0xC6, 0xFF, 1},
    {0x5F45, 0x07, 0xFF, 1},
    {0x5F46, 0x2A, 0xFF, 1},
    {0x5F47, 0x1D, 0xFF, 1},
    {0x5F48, 0x08, 0xFF, 1},
    {0x5F49, 0x76, 0xFF, 1},
    {0x5F4A, 0x81, 0xFF, 1},
    {0x5F4B, 0xC0, 0xFF, 1},
    {0x5F75, 0x27, 0xFF, 1},
    {0x5F76, 0xEE, 0xFF, 1},
    {0x5F77, 0xEE, 0xFF, 1},
    {0x5F78, 0xEE, 0xFF, 1},
    {0x5F79, 0xE5, 0xFF, 1},
    {0x7990, 0x01, 0xFF, 1},
    {0x7993, 0x5D, 0xFF, 1},
    {0x7994, 0x5D, 0xFF, 1},
    {0x7995, 0xA1, 0xFF, 1},
    {0x799A, 0x01, 0xFF, 1},
    {0x799D, 0x00, 0xFF, 1},
    {0x8169, 0x01, 0xFF, 1},
    {0x8359, 0x01, 0xFF, 1},
    {0x88C7, 0x00, 0xFF, 1},
    {0x88D4, 0x03, 0xFF, 1},
    {0x9300, 0x2A, 0xFF, 1},
    {0x9301, 0x24, 0xFF, 1},
    {0x9302, 0x1E, 0xFF, 1},
    {0x9304, 0x2C, 0xFF, 1},
    {0x9305, 0x23, 0xFF, 1},
    {0x9306, 0x1F, 0xFF, 1},
    {0x9308, 0x2D, 0xFF, 1},
    {0x9309, 0x28, 0xFF, 1},
    {0x930A, 0x26, 0xFF, 1},
    {0x930C, 0x2E, 0xFF, 1},
    {0x930D, 0x2C, 0xFF, 1},
    {0x930E, 0x23, 0xFF, 1},
    {0x9310, 0x2E, 0xFF, 1},
    {0x9311, 0x28, 0xFF, 1},
    {0x9312, 0x23, 0xFF, 1},
    {0x9314, 0x31, 0xFF, 1},
    {0x9315, 0x31, 0xFF, 1},
    {0x9316, 0x2C, 0xFF, 1},
    {0x9317, 0x19, 0xFF, 1},
    {0x9960, 0x00, 0xFF, 1},
    {0x9963, 0x64, 0xFF, 1},
    {0x9964, 0x50, 0xFF, 1},
    {0xA391, 0x04, 0xFF, 1},
    {0xB046, 0x01, 0xFF, 1},
    {0xB048, 0x01, 0xFF, 1},
    {0x8145, 0x00, 0xFF, 1},
    {0x8146, 0x04, 0xFF, 1},
    {0x8341, 0x00, 0xFF, 1},
    {0x8343, 0x08, 0xFF, 1},
    {0xA801, 0x00, 0xFF, 1},
    {0xA802, 0x00, 0xFF, 1},
    {0xA903, 0x00, 0xFF, 1},
    {0xA905, 0x00, 0xFF, 1},
    {0xA909, 0x00, 0xFF, 1},
    {0xA90B, 0x00, 0xFF, 1},
    {0xA925, 0x02, 0xFF, 1},
    {0xA927, 0x02, 0xFF, 1},
    {0xA929, 0x02, 0xFF, 1},
    {0xA92B, 0x00, 0xFF, 1},
    {0xA92D, 0x00, 0xFF, 1},
    {0xA92F, 0x00, 0xFF, 1},
    {0xA933, 0x00, 0xFF, 1},
    {0xA935, 0x00, 0xFF, 1},
    {0xA939, 0x00, 0xFF, 1},
    {0xA93B, 0x00, 0xFF, 1},
    {0xA955, 0x02, 0xFF, 1},
    {0xA957, 0x02, 0xFF, 1},
    {0xA959, 0x02, 0xFF, 1},
    {0xA95B, 0x00, 0xFF, 1},
    {0xA95D, 0x00, 0xFF, 1},
    {0xA95F, 0x00, 0xFF, 1},
    {0xA963, 0x00, 0xFF, 1},
    {0xA965, 0x00, 0xFF, 1},
    {0xA969, 0x00, 0xFF, 1},
    {0xA96B, 0x00, 0xFF, 1},
    {0xA985, 0x02, 0xFF, 1},
    {0xA987, 0x02, 0xFF, 1},
    {0xA989, 0x02, 0xFF, 1},
    {0xA98B, 0x00, 0xFF, 1},
    {0xA98D, 0x00, 0xFF, 1},
    {0xA98F, 0x00, 0xFF, 1},
    {0xAA06, 0x3F, 0xFF, 1},
    {0xAA07, 0x05, 0xFF, 1},
    {0xAA08, 0x04, 0xFF, 1},
    {0xAA12, 0x3F, 0xFF, 1},
    {0xAA13, 0x04, 0xFF, 1},
    {0xAA14, 0x03, 0xFF, 1},
    {0xAB55, 0x02, 0xFF, 1},
    {0xAB57, 0x01, 0xFF, 1},
    {0xAB59, 0x01, 0xFF, 1},
    {0xABB4, 0x00, 0xFF, 1},
    {0xABB5, 0x01, 0xFF, 1},
    {0xABB6, 0x00, 0xFF, 1},
    {0xABB7, 0x01, 0xFF, 1},
    {0xABB8, 0x00, 0xFF, 1},
    {0xABB9, 0x01, 0xFF, 1},
    {0xAE08, 0x00, 0xFF, 1},
    {0xAE0B, 0x00, 0xFF, 1},
    {0xAE0E, 0x00, 0xFF, 1},
    {0xAE11, 0x00, 0xFF, 1},
    {0xAE14, 0x00, 0xFF, 1},
    {0xAE1A, 0x00, 0xFF, 1},
    {0xAE2E, 0x00, 0xFF, 1},
    {0xAE31, 0x00, 0xFF, 1},
    {0xAE37, 0x00, 0xFF, 1},
    {0xAE40, 0x00, 0xFF, 1},
    {0xAE54, 0x00, 0xFF, 1},
    {0xAE57, 0x00, 0xFF, 1},
    {0xAE5D, 0x00, 0xFF, 1},
    {0xAE66, 0x00, 0xFF, 1},
    //1920, 1080, _24fps
    {0x0112, 0x0A, 0xFF, 1},
    {0x0113, 0x0A, 0xFF, 1},
    {0x0114, 0x03, 0xFF, 1},
    {0x0342, 0x0A, 0xFF, 1}, //hmax 0x0A00 = 2560
    {0x0343, 0x00, 0xFF, 1}, //hmax
    {0x0340, 0x0F, 0xFF, 1}, //vmax 0x0FE4 = 4068
    {0x0341, 0xE4, 0xFF, 1}, //vmax
    {0x0344, 0x00, 0xFF, 1},
    {0x0345, 0x00, 0xFF, 1},
    {0x0346, 0x02, 0xFF, 1},
    {0x0347, 0x98, 0xFF, 1},
    {0x0348, 0x12, 0xFF, 1},
    {0x0349, 0x2F, 0xFF, 1},
    {0x034A, 0x0B, 0xFF, 1},
    {0x034B, 0x07, 0xFF, 1},
    {0x0381, 0x01, 0xFF, 1},
    {0x0383, 0x01, 0xFF, 1},
    {0x0385, 0x01, 0xFF, 1},
    {0x0387, 0x01, 0xFF, 1},
    {0x0900, 0x01, 0xFF, 1},
    {0x0901, 0x22, 0xFF, 1},
    {0x0902, 0x0A, 0xFF, 1},
    {0x3F4C, 0x01, 0xFF, 1},
    {0x3F4D, 0x01, 0xFF, 1},
    {0x0408, 0x00, 0xFF, 1},
    {0x0409, 0xCC, 0xFF, 1},
    {0x040A, 0x00, 0xFF, 1},
    {0x040B, 0x00, 0xFF, 1},
    {0x040C, 0x07, 0xFF, 1},
    {0x040D, 0x80, 0xFF, 1},
    {0x040E, 0x04, 0xFF, 1},
    {0x040F, 0x38, 0xFF, 1},
    {0x034C, 0x07, 0xFF, 1},
    {0x034D, 0x80, 0xFF, 1},
    {0x034E, 0x04, 0xFF, 1},
    {0x034F, 0x38, 0xFF, 1},
    {0x0301, 0x06, 0xFF, 1},
    {0x0303, 0x04, 0xFF, 1},
    {0x0305, 0x04, 0xFF, 1},
    {0x0306, 0x00, 0xFF, 1},
    {0x0307, 0xFA, 0xFF, 1},
    {0x030B, 0x01, 0xFF, 1},
    {0x030D, 0x06, 0xFF, 1},
    {0x030E, 0x00, 0xFF, 1},
    {0x030F, 0x7D, 0xFF, 1},
    {0x0310, 0x01, 0xFF, 1},
    {0x3E20, 0x01, 0xFF, 1},
    {0x3E37, 0x00, 0xFF, 1},
    {0x3E3B, 0x00, 0xFF, 1},
    {0x3F78, 0x02, 0xFF, 1},
    {0x3F79, 0xA8, 0xFF, 1},
    {0x3FFE, 0x00, 0xFF, 1},
    {0x3FFF, 0x88, 0xFF, 1},
    {0x5F0A, 0xB2, 0xFF, 1},
    {0xA828, 0x02, 0xFF, 1},
    {0xA829, 0x02, 0xFF, 1},
    {0xA84F, 0x01, 0xFF, 1},
    {0xA850, 0x01, 0xFF, 1},
    {0xB2DF, 0x12, 0xFF, 1},
    {0xB2E5, 0x06, 0xFF, 1},
    {0x0202, 0x0F, 0xFF, 1},
    {0x0203, 0xD2, 0xFF, 1},
    {0x0204, 0x00, 0xFF, 1},
    {0x0205, 0x00, 0xFF, 1},
    {0x020E, 0x01, 0xFF, 1},
    {0x020F, 0x00, 0xFF, 1},

    { 0x0000, 0x0000, 0x0000, 0x0000 },
};

static acam_reg_t linear_1280_720_30fps_446Mbps_4lane_10bits[] = {
    //init
    {0x0136, 0x18, 0xFF, 1},
    {0x0137, 0x00, 0xFF, 1},
    {0x3C7E, 0x02, 0xFF, 1},
    {0x3C7F, 0x06, 0xFF, 1},
    {0x3F7F, 0x01, 0xFF, 1},
    {0x531C, 0x01, 0xFF, 1},
    {0x531D, 0x02, 0xFF, 1},
    {0x531E, 0x04, 0xFF, 1},
    {0x5928, 0x00, 0xFF, 1},
    {0x5929, 0x2F, 0xFF, 1},
    {0x592A, 0x00, 0xFF, 1},
    {0x592B, 0x85, 0xFF, 1},
    {0x592C, 0x00, 0xFF, 1},
    {0x592D, 0x32, 0xFF, 1},
    {0x592E, 0x00, 0xFF, 1},
    {0x592F, 0x88, 0xFF, 1},
    {0x5930, 0x00, 0xFF, 1},
    {0x5931, 0x3D, 0xFF, 1},
    {0x5932, 0x00, 0xFF, 1},
    {0x5933, 0x93, 0xFF, 1},
    {0x5938, 0x00, 0xFF, 1},
    {0x5939, 0x24, 0xFF, 1},
    {0x593A, 0x00, 0xFF, 1},
    {0x593B, 0x7A, 0xFF, 1},
    {0x593C, 0x00, 0xFF, 1},
    {0x593D, 0x24, 0xFF, 1},
    {0x593E, 0x00, 0xFF, 1},
    {0x593F, 0x7A, 0xFF, 1},
    {0x5940, 0x00, 0xFF, 1},
    {0x5941, 0x2F, 0xFF, 1},
    {0x5942, 0x00, 0xFF, 1},
    {0x5943, 0x85, 0xFF, 1},
    {0x5E12, 0x00, 0xFF, 1},
    {0x5E13, 0x23, 0xFF, 1},
    {0x5F06, 0x08, 0xFF, 1},
    {0x5F07, 0x81, 0xFF, 1},
    {0x5F0B, 0xEB, 0xFF, 1},
    {0x5F0C, 0xAE, 0xFF, 1},
    {0x5F0D, 0x15, 0xFF, 1},
    {0x5F0E, 0x6E, 0xFF, 1},
    {0x5F0F, 0x03, 0xFF, 1},
    {0x5F10, 0xA5, 0xFF, 1},
    {0x5F11, 0xC6, 0xFF, 1},
    {0x5F12, 0x92, 0xFF, 1},
    {0x5F13, 0xB9, 0xFF, 1},
    {0x5F14, 0x5E, 0xFF, 1},
    {0x5F17, 0x5E, 0xFF, 1},
    {0x5F18, 0xDC, 0xFF, 1},
    {0x5F19, 0x23, 0xFF, 1},
    {0x5F1A, 0xDB, 0xFF, 1},
    {0x5F1B, 0xC7, 0xFF, 1},
    {0x5F1C, 0x5B, 0xFF, 1},
    {0x5F1D, 0x7E, 0xFF, 1},
    {0x5F1E, 0x20, 0xFF, 1},
    {0x5F1F, 0x51, 0xFF, 1},
    {0x5F20, 0xA2, 0xFF, 1},
    {0x5F21, 0x46, 0xFF, 1},
    {0x5F22, 0x87, 0xFF, 1},
    {0x5F23, 0x2C, 0xFF, 1},
    {0x5F24, 0x1D, 0xFF, 1},
    {0x5F25, 0x10, 0xFF, 1},
    {0x5F26, 0x76, 0xFF, 1},
    {0x5F27, 0xA1, 0xFF, 1},
    {0x5F28, 0xC6, 0xFF, 1},
    {0x5F29, 0x07, 0xFF, 1},
    {0x5F2A, 0x1A, 0xFF, 1},
    {0x5F2B, 0x1C, 0xFF, 1},
    {0x5F2C, 0xA8, 0xFF, 1},
    {0x5F2D, 0x76, 0xFF, 1},
    {0x5F2E, 0x61, 0xFF, 1},
    {0x5F2F, 0xC6, 0xFF, 1},
    {0x5F30, 0x87, 0xFF, 1},
    {0x5F31, 0x2C, 0xFF, 1},
    {0x5F32, 0x1D, 0xFF, 1},
    {0x5F33, 0x10, 0xFF, 1},
    {0x5F34, 0x76, 0xFF, 1},
    {0x5F35, 0xA1, 0xFF, 1},
    {0x5F36, 0xC6, 0xFF, 1},
    {0x5F37, 0x07, 0xFF, 1},
    {0x5F38, 0x1A, 0xFF, 1},
    {0x5F39, 0x1C, 0xFF, 1},
    {0x5F3A, 0xA8, 0xFF, 1},
    {0x5F3B, 0x76, 0xFF, 1},
    {0x5F3C, 0xA1, 0xFF, 1},
    {0x5F3D, 0xC6, 0xFF, 1},
    {0x5F3E, 0x87, 0xFF, 1},
    {0x5F3F, 0x2C, 0xFF, 1},
    {0x5F40, 0x1D, 0xFF, 1},
    {0x5F41, 0x10, 0xFF, 1},
    {0x5F42, 0x76, 0xFF, 1},
    {0x5F43, 0xA1, 0xFF, 1},
    {0x5F44, 0xC6, 0xFF, 1},
    {0x5F45, 0x07, 0xFF, 1},
    {0x5F46, 0x2A, 0xFF, 1},
    {0x5F47, 0x1D, 0xFF, 1},
    {0x5F48, 0x08, 0xFF, 1},
    {0x5F49, 0x76, 0xFF, 1},
    {0x5F4A, 0x81, 0xFF, 1},
    {0x5F4B, 0xC0, 0xFF, 1},
    {0x5F75, 0x27, 0xFF, 1},
    {0x5F76, 0xEE, 0xFF, 1},
    {0x5F77, 0xEE, 0xFF, 1},
    {0x5F78, 0xEE, 0xFF, 1},
    {0x5F79, 0xE5, 0xFF, 1},
    {0x7990, 0x01, 0xFF, 1},
    {0x7993, 0x5D, 0xFF, 1},
    {0x7994, 0x5D, 0xFF, 1},
    {0x7995, 0xA1, 0xFF, 1},
    {0x799A, 0x01, 0xFF, 1},
    {0x799D, 0x00, 0xFF, 1},
    {0x8169, 0x01, 0xFF, 1},
    {0x8359, 0x01, 0xFF, 1},
    {0x88C7, 0x00, 0xFF, 1},
    {0x88D4, 0x03, 0xFF, 1},
    {0x9300, 0x2A, 0xFF, 1},
    {0x9301, 0x24, 0xFF, 1},
    {0x9302, 0x1E, 0xFF, 1},
    {0x9304, 0x2C, 0xFF, 1},
    {0x9305, 0x23, 0xFF, 1},
    {0x9306, 0x1F, 0xFF, 1},
    {0x9308, 0x2D, 0xFF, 1},
    {0x9309, 0x28, 0xFF, 1},
    {0x930A, 0x26, 0xFF, 1},
    {0x930C, 0x2E, 0xFF, 1},
    {0x930D, 0x2C, 0xFF, 1},
    {0x930E, 0x23, 0xFF, 1},
    {0x9310, 0x2E, 0xFF, 1},
    {0x9311, 0x28, 0xFF, 1},
    {0x9312, 0x23, 0xFF, 1},
    {0x9314, 0x31, 0xFF, 1},
    {0x9315, 0x31, 0xFF, 1},
    {0x9316, 0x2C, 0xFF, 1},
    {0x9317, 0x19, 0xFF, 1},
    {0x9960, 0x00, 0xFF, 1},
    {0x9963, 0x64, 0xFF, 1},
    {0x9964, 0x50, 0xFF, 1},
    {0xA391, 0x04, 0xFF, 1},
    {0xB046, 0x01, 0xFF, 1},
    {0xB048, 0x01, 0xFF, 1},
    {0x8145, 0x00, 0xFF, 1},
    {0x8146, 0x04, 0xFF, 1},
    {0x8341, 0x00, 0xFF, 1},
    {0x8343, 0x08, 0xFF, 1},
    {0xA801, 0x00, 0xFF, 1},
    {0xA802, 0x00, 0xFF, 1},
    {0xA903, 0x00, 0xFF, 1},
    {0xA905, 0x00, 0xFF, 1},
    {0xA909, 0x00, 0xFF, 1},
    {0xA90B, 0x00, 0xFF, 1},
    {0xA925, 0x02, 0xFF, 1},
    {0xA927, 0x02, 0xFF, 1},
    {0xA929, 0x02, 0xFF, 1},
    {0xA92B, 0x00, 0xFF, 1},
    {0xA92D, 0x00, 0xFF, 1},
    {0xA92F, 0x00, 0xFF, 1},
    {0xA933, 0x00, 0xFF, 1},
    {0xA935, 0x00, 0xFF, 1},
    {0xA939, 0x00, 0xFF, 1},
    {0xA93B, 0x00, 0xFF, 1},
    {0xA955, 0x02, 0xFF, 1},
    {0xA957, 0x02, 0xFF, 1},
    {0xA959, 0x02, 0xFF, 1},
    {0xA95B, 0x00, 0xFF, 1},
    {0xA95D, 0x00, 0xFF, 1},
    {0xA95F, 0x00, 0xFF, 1},
    {0xA963, 0x00, 0xFF, 1},
    {0xA965, 0x00, 0xFF, 1},
    {0xA969, 0x00, 0xFF, 1},
    {0xA96B, 0x00, 0xFF, 1},
    {0xA985, 0x02, 0xFF, 1},
    {0xA987, 0x02, 0xFF, 1},
    {0xA989, 0x02, 0xFF, 1},
    {0xA98B, 0x00, 0xFF, 1},
    {0xA98D, 0x00, 0xFF, 1},
    {0xA98F, 0x00, 0xFF, 1},
    {0xAA06, 0x3F, 0xFF, 1},
    {0xAA07, 0x05, 0xFF, 1},
    {0xAA08, 0x04, 0xFF, 1},
    {0xAA12, 0x3F, 0xFF, 1},
    {0xAA13, 0x04, 0xFF, 1},
    {0xAA14, 0x03, 0xFF, 1},
    {0xAB55, 0x02, 0xFF, 1},
    {0xAB57, 0x01, 0xFF, 1},
    {0xAB59, 0x01, 0xFF, 1},
    {0xABB4, 0x00, 0xFF, 1},
    {0xABB5, 0x01, 0xFF, 1},
    {0xABB6, 0x00, 0xFF, 1},
    {0xABB7, 0x01, 0xFF, 1},
    {0xABB8, 0x00, 0xFF, 1},
    {0xABB9, 0x01, 0xFF, 1},
    {0xAE08, 0x00, 0xFF, 1},
    {0xAE0B, 0x00, 0xFF, 1},
    {0xAE0E, 0x00, 0xFF, 1},
    {0xAE11, 0x00, 0xFF, 1},
    {0xAE14, 0x00, 0xFF, 1},
    {0xAE1A, 0x00, 0xFF, 1},
    {0xAE2E, 0x00, 0xFF, 1},
    {0xAE31, 0x00, 0xFF, 1},
    {0xAE37, 0x00, 0xFF, 1},
    {0xAE40, 0x00, 0xFF, 1},
    {0xAE54, 0x00, 0xFF, 1},
    {0xAE57, 0x00, 0xFF, 1},
    {0xAE5D, 0x00, 0xFF, 1},
    {0xAE66, 0x00, 0xFF, 1},
    //1280, 720 _30fps
    {0x0112, 0x0A, 0xFF, 1},
    {0x0113, 0x0A, 0xFF, 1},
    {0x0114, 0x03, 0xFF, 1},
    {0x0342, 0x0A, 0xFF, 1}, //hmax 0x0A00 = 2560
    {0x0343, 0x00, 0xFF, 1}, //hmax
    {0x0340, 0x12, 0xFF, 1}, //vmax 0x1282 = 4738
    {0x0341, 0x82, 0xFF, 1}, //vmax
    {0x0344, 0x00, 0xFF, 1},
    {0x0345, 0x00, 0xFF, 1},
    {0x0346, 0x04, 0xFF, 1},
    {0x0347, 0x00, 0xFF, 1},
    {0x0348, 0x12, 0xFF, 1},
    {0x0349, 0x2F, 0xFF, 1},
    {0x034A, 0x09, 0xFF, 1},
    {0x034B, 0x9F, 0xFF, 1},
    {0x0381, 0x01, 0xFF, 1},
    {0x0383, 0x01, 0xFF, 1},
    {0x0385, 0x01, 0xFF, 1},
    {0x0387, 0x01, 0xFF, 1},
    {0x0900, 0x01, 0xFF, 1},
    {0x0901, 0x22, 0xFF, 1},
    {0x0902, 0x0A, 0xFF, 1},
    {0x3F4C, 0x01, 0xFF, 1},
    {0x3F4D, 0x01, 0xFF, 1},
    {0x0408, 0x02, 0xFF, 1},
    {0x0409, 0x0C, 0xFF, 1},
    {0x040A, 0x00, 0xFF, 1},
    {0x040B, 0x00, 0xFF, 1},
    {0x040C, 0x05, 0xFF, 1},
    {0x040D, 0x00, 0xFF, 1},
    {0x040E, 0x02, 0xFF, 1},
    {0x040F, 0xD0, 0xFF, 1},
    {0x034C, 0x05, 0xFF, 1},
    {0x034D, 0x00, 0xFF, 1},
    {0x034E, 0x02, 0xFF, 1},
    {0x034F, 0xD0, 0xFF, 1},
    {0x0301, 0x06, 0xFF, 1},
    {0x0303, 0x02, 0xFF, 1},
    {0x0305, 0x04, 0xFF, 1},
    {0x0306, 0x00, 0xFF, 1},
    {0x0307, 0xB6, 0xFF, 1},
    {0x030B, 0x01, 0xFF, 1},
    {0x030D, 0x06, 0xFF, 1},
    {0x030E, 0x00, 0xFF, 1},
    {0x030F, 0x7D, 0xFF, 1},
    {0x0310, 0x01, 0xFF, 1},
    {0x3E20, 0x01, 0xFF, 1},
    {0x3E37, 0x00, 0xFF, 1},
    {0x3E3B, 0x00, 0xFF, 1},
    {0x3F78, 0x02, 0xFF, 1},
    {0x3F79, 0xA8, 0xFF, 1},
    {0x3FFE, 0x00, 0xFF, 1},
    {0x3FFF, 0x88, 0xFF, 1},
    {0x5F0A, 0xB2, 0xFF, 1},
    {0xA828, 0x02, 0xFF, 1},
    {0xA829, 0x02, 0xFF, 1},
    {0xA84F, 0x01, 0xFF, 1},
    {0xA850, 0x01, 0xFF, 1},
    {0xB2DF, 0x12, 0xFF, 1},
    {0xB2E5, 0x06, 0xFF, 1},
    {0x0202, 0x12, 0xFF, 1},
    {0x0203, 0x70, 0xFF, 1},
    {0x0204, 0x00, 0xFF, 1},
    {0x0205, 0x00, 0xFF, 1},
    {0x020E, 0x01, 0xFF, 1},
    {0x020F, 0x00, 0xFF, 1},

    { 0x0000, 0x0000, 0x0000, 0x0000 },
};

static acam_reg_t setting_1920_1080_4lane_446Mbps_30fps_test_pattern[] = {
    {0x0136, 0x18, 0xFF, 1},
    {0x0137, 0x00, 0xFF, 1},
    {0xAE20, 0x00, 0xFF, 1},
    {0x463B, 0x30, 0xFF, 1},
    {0x463E, 0x05, 0xFF, 1},
    {0x4612, 0x66, 0xFF, 1},
    {0x4815, 0x65, 0xFF, 1},
    {0x4991, 0x00, 0xFF, 1},
    {0x4992, 0x01, 0xFF, 1},
    {0x4993, 0xFF, 0xFF, 1},
    {0x458B, 0x00, 0xFF, 1},
    {0x452A, 0x02, 0xFF, 1},
    {0x4A7C, 0x00, 0xFF, 1},
    {0x4A7D, 0x1C, 0xFF, 1},
    {0x4A7E, 0x00, 0xFF, 1},
    {0x4A7F, 0x17, 0xFF, 1},
    {0x462C, 0x2E, 0xFF, 1},
    {0x461B, 0x28, 0xFF, 1},
    {0x4663, 0x29, 0xFF, 1},
    {0x461A, 0x7C, 0xFF, 1},
    {0x4619, 0x28, 0xFF, 1},
    {0x4667, 0x22, 0xFF, 1},
    {0x466B, 0x23, 0xFF, 1},
    {0x4D16, 0x00, 0xFF, 1},
    {0x6204, 0x01, 0xFF, 1},
    {0x6209, 0x00, 0xFF, 1},
    {0x621F, 0x01, 0xFF, 1},
    {0x621E, 0x10, 0xFF, 1},
    {0x48E3, 0x82, 0xFF, 1},
    {0x0114, 0x01, 0xFF, 1},
    {0x0340, 0x06, 0xFF, 1},
    {0x0341, 0x08, 0xFF, 1},
    {0x0342, 0x0E, 0xFF, 1},
    {0x0343, 0x70, 0xFF, 1},
    {0x0344, 0x00, 0xFF, 1},
    {0x0345, 0xF0, 0xFF, 1},
    {0x0346, 0x03, 0xFF, 1},
    {0x0347, 0x34, 0xFF, 1},
    {0x0348, 0x08, 0xFF, 1},
    {0x0349, 0x6F, 0xFF, 1},
    {0x034A, 0x07, 0xFF, 1},
    {0x034B, 0x6B, 0xFF, 1},
    {0x0381, 0x01, 0xFF, 1},
    {0x0383, 0x01, 0xFF, 1},
    {0x0385, 0x01, 0xFF, 1},
    {0x0387, 0x01, 0xFF, 1},
    {0x0900, 0x00, 0xFF, 1},
    {0x0901, 0x00, 0xFF, 1},
    {0x0112, 0x0A, 0xFF, 1},
    {0x0113, 0x0A, 0xFF, 1},
    {0x034C, 0x07, 0xFF, 1},
    {0x034D, 0x80, 0xFF, 1},
    {0x034E, 0x04, 0xFF, 1},
    {0x034F, 0x38, 0xFF, 1},
    {0x0408, 0x00, 0xFF, 1},
    {0x0409, 0x00, 0xFF, 1},
    {0x040A, 0x00, 0xFF, 1},
    {0x040B, 0x00, 0xFF, 1},
    {0x040C, 0x07, 0xFF, 1},
    {0x040D, 0x80, 0xFF, 1},
    {0x040E, 0x04, 0xFF, 1},
    {0x040F, 0x38, 0xFF, 1},
    {0x0301, 0x07, 0xFF, 1},
    {0x0303, 0x02, 0xFF, 1},
    {0x0305, 0x04, 0xFF, 1},
    {0x0306, 0x00, 0xFF, 1},
    {0x0307, 0xC8, 0xFF, 1},
    {0x0309, 0x0A, 0xFF, 1},
    {0x030B, 0x01, 0xFF, 1},
    {0x030D, 0x0F, 0xFF, 1},
    {0x030E, 0x02, 0xFF, 1},
    {0x030F, 0x71, 0xFF, 1},
    {0x0310, 0x01, 0xFF, 1},
    {0x0820, 0x07, 0xFF, 1},
    {0x0821, 0xD0, 0xFF, 1},
    {0x0822, 0x00, 0xFF, 1},
    {0x0823, 0x00, 0xFF, 1},
    {0x3000, 0x00, 0xFF, 1},
    {0x3002, 0x01, 0xFF, 1},
    {0x3003, 0x04, 0xFF, 1},
    {0x6259, 0x05, 0xFF, 1},
    {0x0600, 0x00, 0xFF, 1},
    {0x0601, 0x04, 0xFF, 1},
    { 0x0000, 0x0000, 0x0000, 0x0000 },
};

static acam_reg_t settings_context_imx481[] = {
    { 0x18ec8, 0x0L, 0x1f,1 },
    { 0x1ae7c, 0xa0b9beb9L, 0xffffffff,4 },
    { 0x1ae84, 0x5aL, 0xff,1 },
    { 0x1ae84, 0x32L, 0xff,1 },
    { 0x1ae84, 0x50L, 0xff,1 },
    { 0x1ae84, 0x5aL, 0xff,1 },
    { 0x1aea8, 0x5fa0L, 0xffff,2 },
    { 0x80L,   0x1L,  0xff,1 },
    { 0x19284, 0x4000L, 0xffff,2 },
    { 0x19288, 0x400L, 0xffff,2 },
    { 0x1abc0, 0x400L, 0xffff,2 },
    { 0x1abc4, 0x4000L, 0xffff,2 },
    //stop sequence - address is 0x0000
    { 0x0000, 0x0000, 0x0000, 0x0000 }
};

static const acam_reg_t *seq_table[] = {
        init,
        linear_2328_1748_30fps_446Mbps_4lane_10bits,
        linear_1920_1080_30fps_446Mbps_4lane_10bits,
        linear_1920_1080_24fps_446Mbps_4lane_10bits,
        linear_1280_720_30fps_446Mbps_4lane_10bits,
        setting_1920_1080_4lane_446Mbps_30fps_test_pattern,
};

static const acam_reg_t *isp_seq_table[] = {
        settings_context_imx481,
};

#define SENSOR_IMX481_SEQUENCE_DEFAULT seq_table
#define SENSOR_IMX481_ISP_CONTEXT_SEQUENCE isp_seq_table

#define SENSOR_IMX481_SEQUENCE_DEFAULT_INIT    0
#define SENSOR_IMX481_SEQUENCE_DEFAULT_PREVIEW    1
#define SENSOR_IMX481_SEQUENCE_1080P_30FPS_PREVIEW  2
#define SENSOR_IMX481_SEQUENCE_1080P_24FPS_PREVIEW  3
#define SENSOR_IMX481_SEQUENCE_720P_30FPS_PREVIEW  4
#define SENSOR_IMX481_SEQUENCE_1080P_TESTPATTERN  5
#define SENSOR_IMX481_CONTEXT_SEQ  0

#endif // __IMX481_SEQ_H__
